Introduction
You are going to learn how to make a game, in which you’ll use the mouse to navigate a boat to a desert island.
Step 1: Planning your game
Activity Checklist
Start a new Scratch project, and delete the cat sprite so that your project is empty. You can find the online Scratch editor at jumpto.cc/scratch-new.
Click on your stage backdrop and plan out your level. You should add:
- Wood that your boat has to avoid;
- A desert island that your boat has to get to.
Here’s how your game could look:
- Wood that your boat has to avoid;
Step 2: Controlling the boat
Activity Checklist
If your club leader has given you a ‘Resources’ folder, click ‘Upload sprite from file’ and add the ‘boat.png’ image. You should shrink the sprite and put it in it’s starting position.
If you don’t have the boat.png image, you can draw your own boat instead!
You are going to control the boat with your mouse. Add this code to your boat:
Test out your boat, by clicking the flag and moving the mouse. Does the boat sail towards the mouse?
What happens if the boat reaches the mouse pointer?
To stop this happening, you’ll need to add an
if
block to your code, so that the boat only moves if it is more than 5 pixels away from the mouse.Test out your boat again, to check whether the problem has been fixed.
Save your project
Step 3: Crashing!
Your boat can sail through the wooden barriers! Let’s fix that.
Activity Checklist
You’ll need 2 costumes for your boat, one normal costume, and one for when the boat crashes. Duplicate your boat costume, and name them ‘normal’ and ‘hit’.
Click on your ‘hit’ costume, and choose the ‘Select’ tool to grab bits of the boat and move and rotate them around. Make your boat look as if it’s crashed.
Add this code to your boat, inside the
forever
loop, so that it crashes when it touches any brown wooden bits:This code is inside the
forever
loop, so that your code keeps checking if the boat has crashed.You should also make sure that your boat always starts looking like it’s ‘normal’.
Now if you try to sail through a wooden barrier, you should see that your boat crashes and moves back to the start.
Save your project
Challenge: Winning!
Can you add another if
statement to your boat’s code, so that the player wins when they get to the desert island?
When the boat gets to the yellow desert island, it should say ‘YEAH!’ and then the game should stop. You’ll need to use this code:
Save your project
Challenge: Sound effects
Can you add sound effects to your game, for when the boat crashes, or reaches the island at the end. You could even add background music (see the previous ‘Rock Band’ project if you need help with this).
Save your project
Step 4: Time Trial
Let’s add a timer to your game, so that the player has to get to the desert island as fast as possible.
Activity Checklist
Add a new variable called
time
to your stage. You can also change the display of your new variable. If you need help, have a look at the ‘Balloons’ project.Add this code to your stage, so that the timer counts up until the boat reaches the desert island:
That’s it! Test out your game and see how quickly you can get to the desert island!
Save your project
Step 5: Obstacles and power-ups
This game is far too easy - let’s add things to make it more interesting.
Activity Checklist
First let’s add some ‘boosts’ to your game, which will speed up the boat. Edit your stage backdrop and add in some white booster arrows.
You can now add some code to your boat’s
forever
loop, so that it moves 2 extra steps when touching a white booster.You can also add in a spinning gate, which your boat has to avoid. Add in a new sprite called ‘gate’, which looks like this:
Make sure that the colour of the gate is the same as the other wooden barriers.
Set the center of the gate sprite.
Add code to your gate, to make it spin slowly
forever
.Test out your game. You should now have a spinning gate that you must avoid.
Save your project
Challenge: More obstacles!
Can you add more obstacles to your game? Here are some ideas:
- You could add green slime to your backdrop, which slows the player down when they touch it. You can use a
wait
block to do this:
- You could add a moving object, like a log or a shark!
These blocks may help you:
If your new object isn’t brown, you’ll need to add to your boat code:
Save your project
Challenge: More boats!
Can you turn your game into a race between 2 players?
- Duplicate the boat, rename it ‘Player 2’ and change its colour.
- Change Player 2’s starting position, by changing this code:
- Delete the code that uses the mouse to control the boat:
…and replace it with code to control the boat using the arrow keys.
This is the code you’ll need to move the boat forward:
You’ll also need code to turn
the boat when the left and right arrow keys are pressed.
Save your project
Challenge: More levels!
Can you create additional backdrops, and allow the player to choose between levels?